home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 11 / Cream of the Crop 11-2.iso / os2 / rsynth1.zip / nsynth.h < prev    next >
C/C++ Source or Header  |  1994-11-08  |  5KB  |  85 lines

  1. /* $Id: nsynth.h,v 1.11 1994/11/08 13:30:50 a904209 Exp a904209 $
  2. */
  3. #define CASCADE_PARALLEL      1
  4. #define ALL_PARALLEL          2
  5. #define NPAR                 40
  6. #define IMPULSIVE             1
  7. #define NATURAL               2
  8. #ifndef PI
  9. #define PI            3.1415927
  10. #endif
  11.  
  12. #ifndef TRUE
  13. #define TRUE                  1
  14. #endif
  15.  
  16. #ifndef FALSE
  17. #define FALSE                 0
  18. #endif
  19.  
  20. typedef struct
  21.  {
  22.   long F0hz10;            /* Voicing fund freq in Hz                          */        
  23.   long AVdb;              /* Amp of voicing in dB,            0 to   70       */        
  24.   long F1hz;              /* First formant freq in Hz,        200 to 1300     */        
  25.   long B1hz;              /* First formant bw in Hz,          40 to 1000      */        
  26.   long F2hz;              /* Second formant freq in Hz,       550 to 3000     */        
  27.   long B2hz;              /* Second formant bw in Hz,         40 to 1000      */        
  28.   long F3hz;              /* Third formant freq in Hz,        1200 to 4999    */        
  29.   long B3hz;              /* Third formant bw in Hz,          40 to 1000      */        
  30.   long F4hz;              /* Fourth formant freq in Hz,       1200 to 4999    */        
  31.   long B4hz;              /* Fourth formant bw in Hz,         40 to 1000      */        
  32.   long F5hz;              /* Fifth formant freq in Hz,        1200 to 4999    */        
  33.   long B5hz;              /* Fifth formant bw in Hz,          40 to 1000      */        
  34.   long F6hz;              /* Sixth formant freq in Hz,        1200 to 4999    */        
  35.   long B6hz;              /* Sixth formant bw in Hz,          40 to 2000      */        
  36.   long FNZhz;             /* Nasal zero freq in Hz,           248 to  528     */        
  37.   long BNZhz;             /* Nasal zero bw in Hz,             40 to 1000      */        
  38.   long FNPhz;             /* Nasal pole freq in Hz,           248 to  528     */        
  39.   long BNPhz;             /* Nasal pole bw in Hz,             40 to 1000      */        
  40.   long ASP;               /* Amp of aspiration in dB,         0 to   70       */        
  41.   long Kopen;             /* # of samples in open period,     10 to   65      */        
  42.   long Aturb;             /* Breathiness in voicing,          0 to   80       */        
  43.   long TLTdb;             /* Voicing spectral tilt in dB,     0 to   24       */        
  44.   long AF;                /* Amp of frication in dB,          0 to   80       */        
  45.   long Kskew;             /* Skewness of alternate periods,   0 to   40 in sample#/2  */
  46.   long A1;                /* Amp of par 1st formant in dB,    0 to   80       */        
  47.   long B1phz;             /* Par. 1st formant bw in Hz,       40 to 1000      */        
  48.   long A2;                /* Amp of F2 frication in dB,       0 to   80       */        
  49.   long B2phz;             /* Par. 2nd formant bw in Hz,       40 to 1000      */        
  50.   long A3;                /* Amp of F3 frication in dB,       0 to   80       */        
  51.   long B3phz;             /* Par. 3rd formant bw in Hz,       40 to 1000      */        
  52.   long A4;                /* Amp of F4 frication in dB,       0 to   80       */        
  53.   long B4phz;             /* Par. 4th formant bw in Hz,       40 to 1000      */        
  54.   long A5;                /* Amp of F5 frication in dB,       0 to   80       */        
  55.   long B5phz;             /* Par. 5th formant bw in Hz,       40 to 1000      */        
  56.   long A6;                /* Amp of F6 (same as r6pa),        0 to   80       */        
  57.   long B6phz;             /* Par. 6th formant bw in Hz,       40 to 2000      */        
  58.   long ANP;               /* Amp of par nasal pole in dB,     0 to   80       */        
  59.   long AB;                /* Amp of bypass fric. in dB,       0 to   80       */        
  60.   long AVpdb;             /* Amp of voicing,  par in dB,      0 to   70       */        
  61.   long Gain0;             /* Overall gain, 60 dB is unity,    0 to   60       */        
  62.  } klatt_frame_t, *klatt_frame_ptr;
  63.  
  64. extern klatt_frame_t def_pars;
  65.  
  66. typedef struct 
  67.  {
  68.   int  synthesis_model;
  69.   int  quiet_flag;
  70.   int  f0_flutter;
  71.   int  outsl;
  72.   long samrate;
  73.   long nfcascade;
  74.   long glsource;
  75.   long nspfr;
  76.  } klatt_global_t, *klatt_global_ptr;
  77.  
  78. extern klatt_global_t klatt_global;
  79.  
  80. extern void parwave  PROTO((klatt_global_ptr, klatt_frame_ptr pars,short int *jwave));
  81. extern void parwave_init  PROTO((klatt_global_ptr));
  82. extern void pr_pars PROTO((void));
  83. extern int  init_synth PROTO((int argc,char *argv[]));
  84.  
  85.